package thinkingInJava.containers;
// page 477
//: containers/SortedMapDemo.java
//What you can do with a TreeMap.
import java.util.*;
import static thinkingInJava.YTool.YPrint.*;

public class SortedMapDemo {
public static void main(String[] args) {
 TreeMap<Integer,String> sortedMap =
   new TreeMap<Integer,String>(new CountingMapData(10));
 println(sortedMap);
 Integer low = sortedMap.firstKey();
 Integer high = sortedMap.lastKey();
 println(low);
 println(high);
 Iterator<Integer> it = sortedMap.keySet().iterator();
 for(int i = 0; i <= 6; i++) {
   if(i == 3) low = it.next();
   if(i == 6) high = it.next();
   else it.next();
 }
 println(low);
 println(high);
 println(sortedMap.subMap(low, high));
 println(sortedMap.headMap(high));
 println(sortedMap.tailMap(low));
}
} /* Output:
{0=A0, 1=B0, 2=C0, 3=D0, 4=E0, 5=F0, 6=G0, 7=H0, 8=I0, 9=J0}
0
9
3
7
{3=D0, 4=E0, 5=F0, 6=G0}
{0=A0, 1=B0, 2=C0, 3=D0, 4=E0, 5=F0, 6=G0}
{3=D0, 4=E0, 5=F0, 6=G0, 7=H0, 8=I0, 9=J0}
*///:~
